package br.com.medvagas.web.conversor;

import javax.faces.component.UIComponent;
import javax.faces.context.FacesContext;
import javax.faces.convert.Converter;
import javax.faces.convert.ConverterException;
import javax.faces.convert.FacesConverter;

import org.apache.commons.lang.StringUtils;

import br.com.medvagas.comum.funcoes.FuncoesCpfCnpj;

@FacesConverter("conversorCpf")
public class ConversorCPF implements Converter {
	
	@Override
	public String getAsString(FacesContext FacesContext, UIComponent UIComponent, Object valor) 
			throws ConverterException {
		
		String valorString = (String) valor;
		
		return StringUtils.isNotEmpty(valorString) ? 
				FuncoesCpfCnpj.formatarNumeroCpf(valor.toString()) : null;
	}

	@Override
	public Object getAsObject(FacesContext FacesContext, UIComponent UIComponent, String novoValor) 
			throws ConverterException {

		return StringUtils.isNotEmpty(novoValor) ? 
				FuncoesCpfCnpj.removeNaoNumericosCpfCnpj(novoValor) : null;
	}
	
}
